﻿using System;
using Mx.Ipn.Escom.TT20080015.Modelo.Datos;
using Mx.Ipn.Escom.TT20080015.Modelo.DB;

namespace Mx.Ipn.Escom.TT20080015.Vistas
{
    /// <summary>
    /// Clase inicial del sistema.
    /// </summary>
    public partial class _Default : System.Web.UI.Page
    {
        public enum LoginValues { Error = -1, Unknown, known }

        /// <summary>
        /// Redirecciona a la vista MenuAdministrador o MenuEspecialista dependiendo del perfil de usuario.
        /// </summary>
        protected void Page_Load(object sender, EventArgs e)
        {
            if (Session["user"] != null)
            {
                Usuario user = (Usuario)Session["user"];
                if (user.Perfil.Equals("Administrador"))
                    Server.Transfer("~/vistas/control/MenuAdministrador.aspx", false);
                else
                    Server.Transfer("~/vistas/control/MenuEspecialista.aspx", false);
            }
        }

        /// <summary>
        /// Este método realiza una consulta a la tabla de la base de datos usuario.
        /// Si lo encuentra registrado verifica su clave de acceso y nombre de usuario.
        /// </summary>
        protected void login_Click(object sender, EventArgs e)
        {
            Usuario user = UsuarioManager.Consultar(Util.Validar(userNameTextBox.Text), Util.Validar(claveTextBox.Text));
            if (user != null)
            {
                Session.Add("user", user);
                if (user.Perfil.Equals("Administrador"))
                    Server.Transfer("./vistas/control/MenuAdministrador.aspx", false);
                else
                    Server.Transfer("./vistas/control/MenuEspecialista.aspx", false);
            }
            else
                mensajeLabel.Text = "Nombre de usuario o contrase&ntilde;a incorrecto";
        }

        protected void registrarButton_Click(object sender, EventArgs e)
        {
            Server.Transfer("./vistas/especialista/Especialista.aspx", false);
        }
    }
}
